Why do we need to cast the object returned by the Parse method